radeon requires firmware/microcode for the GPU in all chips, but for
newer chips (apparently R600 'Evergreen' onward) it also expects
firmware for the memory controller and other sub-blocks.
radeon attempts to gracefully fall back and disable some features if
the firmware is not available, but becomes unstable - the framebuffer
and/or system memory may be corrupted, or the display may stay black.
Therefore, perform a basic check for the existence of
/lib/firmware/radeon when a device is probed, and abort if it
is missing, except for the pre-R600 case.
Update 2023-11-08:
In bug 1053764 Mario Limonciello <mario.limonciello@amd.com> states
that the patch isn't needed anymore for amdgpu, so remove that part
of the patch
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
Ben Hutchings [Thu, 30 May 2024 12:14:32 +0000 (13:14 +0100)]
firmware_loader: Log direct loading failures as info for d-i
Forwarded: not-needed
On an installed Debian system, firmware packages will normally be
installed automatically based on a mapping of device IDs to firmware.
Within the Debian installer this has not yet happened and we need a
way to detect missing firmware.
Although many/most drivers log firmware loading failures, they do so
using many different formats. This adds a single log message to the
firmware loader, which the installer's hw-detect package will look
for. The log level is set to "info" because some failures are
expected and we do not want to confuse users with bogus error messages
(like in bug #966218).
NOTE: The log message format must not be changed without coordinating
this with the check-missing-firmware.sh in hw-detect.
Gbp-Pq: Topic debian
Gbp-Pq: Name firmware_loader-log-direct-loading-failures-as-info-for-d-i.patch
The iwlwifi driver currently supports firmware API versions 4-6 for
these devices. It will request the file for the latest supported
version and then fall back to earlier versions. However, the latest
version that has actually been released is 4, so we expect the
requests for versions 6 and then 5 to fail.
The installer appears to report any failed request, and it is probably
not easy to detect that this particular failure is harmless. So stop
requesting the unreleased firmware.
Gbp-Pq: Topic debian
Gbp-Pq: Name iwlwifi-do-not-request-unreleased-firmware.patch
Ben Hutchings [Mon, 24 Aug 2009 22:19:58 +0000 (23:19 +0100)]
af9005: Use request_firmware() to load register init script
Forwarded: no
Read the register init script from the Windows driver. This is sick
but should avoid the potential copyright infringement in distributing
a version of the script which is directly derived from the driver.
Gbp-Pq: Topic features/all
Gbp-Pq: Name drivers-media-dvb-usb-af9005-request_firmware.patch
Ben Hutchings [Sat, 13 May 2023 11:03:26 +0000 (13:03 +0200)]
fixdep: Allow overriding HOSTCC and HOSTLD
Forwarded: not-needed
objtool always uses HOSTCC, HOSTLD, and HOSTAR, so we need to override
these on the command line for cross-builds of linux-kbuild. But it
also builds fixdep which still needs to be native in a cross-build.
Add support for REALHOSTCC and REALHOSTLD variables which, if set,
override HOSTCC and HOSTLD for fixdep only.
Gbp-Pq: Topic debian
Gbp-Pq: Name fixdep-allow-overriding-hostcc-and-hostld.patch
The top-level Makefile warns if the compiler version string changes at
all between the kernel build and an out-of-tree module build.
We expect that major compiler version changes could introduce ABI
changes, and override the CC variable in out-of-tree module builds to
ensure that the same major compiler version is used. But minor
version changes should not make a difference, so this exact version
comparison produces false warnings.
Since custom kernel packages don't have that, don't remove the version
comparison. Instead, skip it if $(DEBIAN_KERNEL_NO_CC_VERSION_CHECK)
is non-empty.
Gbp-Pq: Topic debian
Gbp-Pq: Name makefile-make-compiler-version-comparison-optional.patch
DKMS and module-assistant both build OOT modules as root. If they
build an old OOT module that still use SUBDIRS this causes Kbuild
to try building a full kernel, which obviously fails but not before
deleting files from the installed headers package.
To avoid such mishaps, detect this situation and abort the build.
The error message is based on that used in commit 0126be38d988
"kbuild: announce removal of SUBDIRS if used".
Gbp-Pq: Topic debian
Gbp-Pq: Name kbuild-abort-build-if-subdirs-used.patch
The module.lds linker script is now built under the scripts directory,
where previously it was under arch/$(SRCARCH).
However, we package the scripts directory as linux-kbuild, which is
meant to be able to do support native and cross-builds. That means it
shouldn't contain files for a specific target architecture without a
wrapper to select between them, and it doesn't appear that linker
scripts are powerful enough to implement such a wrapper.
Building module.lds in a different location would require relatively
large changes. Moving it in the package build rules can work, but we
need to support custom kernel builds from the same source so we can't
assume it's moved.
Therefore, we move module.lds under the arch build directory in
rules.real and change Makefile.modfinal to look for it in both places.
Gbp-Pq: Topic debian
Gbp-Pq: Name kbuild-look-for-module.lds-under-arch-directory-too.patch
Ben Hutchings [Fri, 22 Jun 2018 16:27:00 +0000 (17:27 +0100)]
android: Enable building ashmem and binder as modules
Bug-Debian: https://bugs.debian.org/901492
We want to enable use of the Android ashmem and binder drivers to
support Anbox, but they should not be built-in as that would waste
resources and increase security attack surface on systems that don't
need them.
- Add a MODULE_LICENSE declaration to ashmem
- Change the Makefiles to build each driver as an object with the
"_linux" suffix (which is what Anbox expects)
- Change config symbol types to tristate
Update:
In upstream commit 721412ed3d titled "staging: remove ashmem" the ashmem
driver was removed entirely. Secondary commit message:
"The mainline replacement for ashmem is memfd, so remove the legacy
code from drivers/staging/"
Consequently, the ashmem part of this patch has been removed.
Gbp-Pq: Topic debian
Gbp-Pq: Name android-enable-building-ashmem-and-binder-as-modules.patch
Ben Hutchings [Mon, 5 Aug 2024 01:26:48 +0000 (03:26 +0200)]
Export symbols needed by binder
Bug-Debian: https://bugs.debian.org/901492
We want to enable use of the Android binder driver to support
Waydroid, but it should not be built-in as that would waste resources
and increase security attack surface on systems that don't need it.
Export the currently un-exported symbols it depends on.
Gbp-Pq: Topic debian
Gbp-Pq: Name export-symbols-needed-by-android-drivers.patch
YunQiang Su [Mon, 16 Nov 2020 01:11:00 +0000 (09:11 +0800)]
Use RELAXED ieee754 mode for Loongson-3 as 3A 4000 is 2008-only
Forwarded: not-needed
There are 2 mode of value of IEEE NaN hardcoded by CPU.
Currently, our mipsel/mips64el port is in so-called lagacy mode.
Loongson 3A 4000 is set as the so-called 2008 mode.
To make Debian workable on Loongson 3A 4000, we need set the kerenl in
RELAXED mode.
Ben Hutchings [Tue, 12 May 2015 18:29:22 +0000 (19:29 +0100)]
Make mkcompile_h accept an alternate timestamp string
Forwarded: not-needed
We want to include the Debian version in the utsname::version string
instead of a full timestamp string. However, we still need to provide
a standard timestamp string for gen_initramfs_list.sh to make the
kernel image reproducible.
Make mkcompile_h use $KBUILD_BUILD_VERSION_TIMESTAMP in preference to
$KBUILD_BUILD_TIMESTAMP.
Gbp-Pq: Topic debian
Gbp-Pq: Name uname-version-timestamp.patch
Ben Hutchings [Sat, 2 Jun 2012 18:53:38 +0000 (19:53 +0100)]
video: Remove nvidiafb and rivafb
Bug-Debian: https://bugs.debian.org/383481
Forwarded: no
These drivers contain register programming code provided by the
hardware vendor that appears to have been deliberately obfuscated.
This is arguably not the preferred form for modification.
These drivers are also largely redundant with nouveau. The RIVA 128
(NV3) is not supported by nouveau but is about 15 years old and
probably discontinued 10 years ago.
Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name video-remove-nvidiafb-and-rivafb.patch
* New upstream stable update:
https://www.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.21
- [arm64] firmware: qcom: scm: Fix error code in probe()
- [arm64] dts: freescale: tqma8mpql: Fix vqmmc-supply
- [arm64] dts: rockchip: remove supports-cqe from rk3588 jaguar
- [arm64] dts: rockchip: remove supports-cqe from rk3588 tiger
- xfrm: fix tunnel mode TX datapath in packet offload mode
- xfrm_output: Force software GSO only in tunnel mode
- [arm64] soc: imx8m: Remove global soc_uid
- [arm64] soc: imx8m: Use devm_* to simplify probe failure handling
- [arm64] soc: imx8m: Unregister cpufreq and soc dev in cleanup path
- [arm64] dts: bcm2712: PL011 UARTs are actually r1p5
- [arm64] dts: rockchip: Remove undocumented sdmmc property from lubancat-1
- RDMA/rxe: Fix the failure of ibv_query_device() and ibv_query_device_ex()
tests
- RDMA/bnxt_re: Add missing paranthesis in map_qp_id_to_tbl_indx
- RDMA/mlx5: Handle errors returned from mlx5r_ib_rate()
- dma-mapping: fix missing clear bdr in check_ram_in_range_map()
- RDMA/bnxt_re: Avoid clearing VLAN_ID mask in modify qp path
- [arm64] RDMA/hns: Fix soft lockup during bt pages loop
- [arm64] RDMA/hns: Fix unmatched condition in error path of
alloc_user_qp_db()
- [arm64] RDMA/hns: Fix invalid sq params not being blocked
- [arm64] RDMA/hns: Fix a missing rollback in error path of
hns_roce_create_qp_common()
- [arm64] RDMA/hns: Fix missing xa_destroy()
- [arm64] RDMA/hns: Fix wrong value of max_sge_rd
- Bluetooth: Fix error code in chan_alloc_skb_cb()
- Bluetooth: hci_event: Fix connection regression between LE and non-LE
adapters
- tracing: tprobe-events: Fix to clean up tprobe correctly when module
unload
- [arm64] net: ethernet: ti: am65-cpsw: Fix NAPI registration sequence
- net: ipv6: fix TCP GSO segmentation with NAT
- ipv6: Fix memleak of nhc_pcpu_rth_output in fib_check_nh_v6_gw().
- ipv6: Set errno after ip_fib_metrics_init() in ip6_route_info_create().
- devlink: fix xa_alloc_cyclic() error handling
- dpll: fix xa_alloc_cyclic() error handling
- phy: fix xa_alloc_cyclic() error handling
- [arm64,armhf] gpu: host1x: Do not assume that a NULL domain means no DMA
IOMMU
- net: atm: fix use after free in lec_send()
- net: ti: icssg-prueth: Add lock to stats
- net: lwtunnel: fix recursion loops
- net: ipv6: ioam6: fix lwtunnel_output() loop
- libfs: Fix duplicate directory entry in offset_dir_lookup
- net/neighbor: add missing policy for NDTPA_QUEUE_LENBYTES
- Revert "gre: Fix IPv6 link-local address generation."
- tracing: tprobe-events: Fix leakage of module refcount
- i2c: omap: fix IRQ storms
- net: mana: Support holes in device list reply msg
- dt-bindings: can: renesas,rcar-canfd: Fix typo in pattern properties for
R-Car V4M
- can: ucan: fix out of bound read in strscpy() source
- [arm64,armhf] can: flexcan: only change CAN state when link up in system
PM
- [arm64,armhf] can: flexcan: disable transceiver during system PM
- drm/xe: Fix exporting xe buffers multiple times
- [arm64] drm/v3d: Don't run jobs that have errors flagged in its fence
- io_uring/net: don't clear REQ_F_NEED_CLEANUP unconditionally
- [riscv64] dts: starfive: Fix a typo in StarFive JH7110 pin function
definitions
- netfs: Call `invalidate_cache` only if implemented
- regulator: dummy: force synchronous probing
- regulator: check that dummy regulator has been probed before using it
- [arm64] dts: freescale: imx8mp-verdin-dahlia: add Microphone Jack to sound
card
- [arm64] dts: freescale: imx8mm-verdin-dahlia: add Microphone Jack to sound
card
- [arm64] dts: rockchip: fix pinmux of UART0 for PX30 Ringneck on Haikou
- [arm64] dts: rockchip: fix pinmux of UART5 for PX30 Ringneck on Haikou
- mm: fix error handling in __filemap_get_folio() with FGP_NOWAIT
- mm/migrate: fix shmem xarray update during migration
- mm/page_alloc: fix memory accept before watermarks gets initialized
- proc: fix UAF in proc_get_inode()
- memcg: drain obj stock on cpu hotplug teardown
- [arm64] firmware: qcom: uefisecapp: fix efivars registration race
- efi/libstub: Avoid physical address 0x0 when doing random allocation
- keys: Fix UAF in key_put()
- xsk: fix an integer overflow in xp_create_and_assign_umem()
- batman-adv: Ignore own maximum aggregation size during RX
- [arm64] soc: qcom: pdr: Fix the potential deadlock
- pmdomain: amlogic: fix T7 ISP secpower
- drm/radeon: fix uninitialized size issue in radeon_vce_cs_parse()
- drm/sched: Fix fence reference count leak
- drm/amdgpu/gfx12: correct cleanup of 'me' field with gfx_v12_0_me_fini()
- drm/amd/display: Fix message for support_edp0_on_dp1
- drm/amd/display: Use HW lock mgr for PSR1 when only one eDP
- drm/amd/pm: add unique_id for gfx12
- drm/amdgpu: Restore uncached behaviour on GFX12
- drm/amdgpu/pm: Handle SCLK offset correctly in overdrive for smu 14.0.2
- drm/amdgpu/pm: wire up hwmon fan speed for smu 14.0.2
- drm/amdgpu: Remove JPEG from vega and carrizo video caps
- drm/amdgpu: Fix MPEG2, MPEG4 and VC1 video caps max size
- drm/amdgpu: Fix JPEG video caps max size for navi1x and raven
- ksmbd: fix incorrect validation for num_aces field of smb_acl
- io_uring/net: fix sendzc double notif flush
- [arm64] KVM: arm64: Calculate cptr_el2 traps on activating traps
- [arm64] KVM: arm64: Unconditionally save+flush host FPSIMD/SVE/SME state
- [arm64] KVM: arm64: Remove host FPSIMD saving for non-protected KVM
- [arm64] KVM: arm64: Remove VHE host restore of CPACR_EL1.ZEN
- [arm64] KVM: arm64: Remove VHE host restore of CPACR_EL1.SMEN
- [arm64] KVM: arm64: Refactor exit handlers
- [arm64] KVM: arm64: Mark some header functions as inline
- [arm64] KVM: arm64: Eagerly switch ZCR_EL{1,2}
- Revert "sched/core: Reduce cost of sched_move_task when config autogroup"
- libsubcmd: Silence compiler warning
- [arm64] dts: rockchip: fix u2phy1_host status for NanoPi R4S
- mm/huge_memory: drop beyond-EOF folios with the right number of refs
- mptcp: Fix data stream corruption in the address announcement
[ Ben Hutchings ]
* lintian: Restore override for perf-read-vdso32 in linux-perf
* linux-perf: Fix perf-check manual page built with asciidoctor
* rtla: Add man page link for hwnoise(1)
* intel-sdsi, rtla: Add "Depends: ${misc:Depends}"
* d/copyright: Update filenames under arch/arm/boot/dts
* d/copyright: Remove special case for drivers/crypto/vmx/*.pl
* lintian: Override superfluous-file-pattern for d/copyright in
linux-signed-*
* d/salsa-ci.yml: Run lintian from the target release, not always unstable
* [powerpc*] Revert "fbdev/offb: Update expected device name" (Closes:
#1085949)
* d/b/genpatch-rt: Fix subprocess cleanup with Python 3.13
[ Salvatore Bonaccorso ]
* sound/soc/amd/acp: Enable SND_AMD_ASOC_RENOIR as module (Closes: #1101155)
* d/b/genpatch-rt: Drop now unused 'io' module.
[ Vagrant Cascadian ]
* drivers/net/wireless/realtek/rtw88: Enable RTW88_8723CS as a module
[ Miguel Bernal Marin ]
* [amd64,arm64/cloud] Enable virtualisation drivers on cloud flavours,
(Closes: #1101378)
- drivers/virt: Enable VIRT_DRIVERS
- drivers/virt: Enable VMGENID
- drivers/virt/nitro_enclaves: Enable NITRO_ENCLAVES as module
- drivers/virt/coco/sev-guest: Enable SEV_GUEST as module
- drivers/virt/coco/tdx-guest: Enable TDX_GUEST_DRIVER as module